#ifndef MAINWINDOW_H
#define MAINWINDOW_H

#include <QAction>
#include <QKeySequenceEdit>
#include <QMainWindow>
#include <QShortcut>
#include <qDebug>

QT_BEGIN_NAMESPACE
namespace Ui {
class MainWindow;
}
QT_END_NAMESPACE

class MainWindow : public QMainWindow
{
    Q_OBJECT

public:
    MainWindow(QWidget *parent = nullptr);
    ~MainWindow();
    bool eventFilter(QObject *obj, QEvent *event);

private:
    Ui::MainWindow *ui;
    QKeySequenceEdit *keySequenceEdit;
private slots:
    void KSEKeySequenceChanged(const QKeySequence &keySequence);
    void onOpenFile() {
        // 这里实现打开文件的功能
        qDebug() << "Open file triggered by shortcut";
    }

    void customSlot() {
        // 这是被快捷键触发的自定义槽函数
        qDebug() << "Custom slot triggered by shortcut";
    }
    void globalSlot() {
        // 这是被快捷键触发的自定义槽函数
        qDebug() << "Custom globalSlot slot triggered by shortcut";
        if(this->isHidden()){
            this->show();
        }else{
            this->hide();
        }
    }
    void on_pushButton_clicked();
    void updateLineEdit(const QString &text);
};
#endif // MAINWINDOW_H
